/**
 * 
 */
package model;


/**
 * @author spiller.sebastian
 *
 */
public class DownloadArtikel extends Artikel {
	

	//kein setter!!! Diesen im Nachhinein zu veraendern haette fatale Folgen
	private String key;
	
	//kein setter weil der eingentlich unsinnig ist und der wert von der Datei abhängig
	private String downloadgroesse;
	
	private String dateiname;

	/**
	 * erzeugt einen herunterladbaren Artikel 
	 * 
	 * @param artikelnr
	 * @param bezeichnung
	 * @param listenpreis
	 * @param key
	 * @param downloadgroesse
	 * @param dateiname
	 */
	public DownloadArtikel(int artikelnr, String bezeichnung,
			double listenpreis, String key, String downloadgroesse,
			String dateiname) {
		super(artikelnr, bezeichnung, listenpreis);
		this.key = key;
		this.downloadgroesse = downloadgroesse;
		this.dateiname = dateiname;
	}
	

	
	/**
	 * erzeugt ein Passwort fuer die kundennummer
	 * 
	 * @param kundennr
	 * @return
	 */
	public String getPasswortfuerKunden(int kundennr){
		
		int keyLength = key.length();
		
		String pass = key.substring(0, keyLength/2) + kundennr + key.substring(keyLength/2 + 1);
		
		pass = kundennr + pass + kundennr;

		return this.verschluesseln(pass);
	}


	/**
	 * verschluesselt einen String
	 * 
	 * @param pass
	 * @return
	 */
	private String verschluesseln(String pass) {
		
		//TODO: den String wirklich verschluesseln...
		return pass;
	}



	/**
	 * @return the dateiname
	 */
	public String getDateiname() {
		return dateiname;
	}



	/**
	 * @param dateiname the dateiname to set
	 */
	public void setDateiname(String dateiname) {
		this.dateiname = dateiname;
	}



	/**
	 * @return the key
	 */
	public String getKey() {
		return key;
	}



	/**
	 * @return the downloadgroesse
	 */
	public String getDownloadgroesse() {
		return downloadgroesse;
	}



}
